﻿/*
美丽的数 
Time Limit:1000MS  Memory Limit:32768K

  
Description:
有些数总是与众不同，它们认为自己比其它数美丽。数与数之间是怎样比美丽的呢？
它们往往看谁拥有的质数数字多！
例如333只有一个质数数字3，3563有两种质数数字3和5，而6不是质数数字。
如果两个数有相同的质数种类数目，那么小的那个数就比较美丽了，你能帮忙找出最美丽的数吗？

Input:
有多组输入数据，每组数据以N开头，表示接下来有N个数。输入数据以0为结束。 
Output:
每行对应一个输出，即美丽的数，最后一个0不必处理。 
Sample Input:
4　2　3　4　5
3　33　35　3475
0
Sample Output:
2
3475
*/
#include <iostream>
#include <climits>
#include <string>
using namespace std;

int main()
{
	const int primes10[] = {2, 3, 5, 7};
	for (int n; cin>>n && n;)
	{
		string beauty;
		int min=INT_MIN;
		while (n--)
		{
			string num;
			cin>>num;
			
			int counts[10]={0};
			for (string::iterator it = num.begin(); it != num.end(); ++it)
				counts[*it-'0']++;

			int sum=0;
			for (int i=0; i<4; ++i)
				if(counts[primes10[i]])
					++sum;
			if(min<sum)
			{
				min=sum;
				beauty=num;
			}
			else if((sum==min) && (num<beauty))
			{
				beauty=num;
			}
		}
		cout<<beauty<<endl;
	}
	return 0;
}